package com.circle.interests.biz.entity;

import com.baomidou.mybatisplus.annotation.TableLogic;
import com.circle.common.mybatisplus.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * <p>
 * 奖品发放记录
 * </p>
 *
 * @author generator
 * @since 2021-12-05
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="PrizeWinRecord对象", description="奖品发放记录")
public class PrizeWinRecord extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "场景类型;1活动，2内容")
    private Integer sceneType;

    @ApiModelProperty(value = "场景id;某场景下唯一主键，例如场景类型1时为活动ID")
    private String sceneId;

    @ApiModelProperty(value = "奖品分类")
    private Long prizeCategoryId;

    @ApiModelProperty(value = "奖品ID")
    private Long prizeId;

    @ApiModelProperty(value = "奖品名称")
    private String prizeName;

    @ApiModelProperty(value = "奖品原价;单位分")
    private Integer prizeOriginalPrice;

    @ApiModelProperty(value = "奖品金额;单位分")
    private Integer prizePrice;

    @ApiModelProperty(value = "类型;1直充 2卡密")
    private Integer prizeType;

    @ApiModelProperty(value = "卡密;卡密奖品才有卡密")
    private String prizeCardPassword;

    @ApiModelProperty(value = "奖品小图")
    private String prizeSmallImg;

    @ApiModelProperty(value = "公众号ID")
    private String appId;

    @ApiModelProperty(value = "用户openId")
    private String openId;

    @ApiModelProperty(value = "状态;1中奖未领取，2已领取待核销，3未领取已过期，4已领取已过期，5已领取核销中，6已核销，7核销失败")
    private Integer status;

    @ApiModelProperty(value = "回收标识;0未回收，1已回收")
    private Integer recycleFlag;

    @ApiModelProperty(value = "中奖时间")
    private LocalDateTime winTime;

    @ApiModelProperty(value = "领取时间")
    private LocalDateTime receiveTime;

    @ApiModelProperty(value = "回收时间")
    private LocalDateTime recycleTime;

    @ApiModelProperty(value = "奖品核销码")
    private String writeOffCode;

    @ApiModelProperty(value = "奖品核销二维码")
    private String writeOffQrCode;

    @ApiModelProperty(value = "核销信息")
    private String writeOffMessage;

    @ApiModelProperty(value = "奖品核销时间")
    private LocalDateTime writeOffTime;

    @ApiModelProperty(value = "删除标识;是否删除 0否 1是")
    @TableLogic
    private Integer delFlag;


}
